// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'

import '@/styles/index.scss'
//当项目发布阶段，vue核心包所有打印信息在控制台都不会出现
Vue.config.productionTip = false
//引入文件后需要使用Vue.use()注册使用ElementUI才能在页面上显示
Vue.use(ElementUI)

//注册一个全局守卫，作用是在路由跳转前，对路由进行判断，防止未登录的用户跳转到其他页面去
router.beforeEach((to, from, next) => {
  //获取用户的token信息，用来判断当前用户是否登录，如果存在则已登录，如果不存在则未登录
  let mytoken=localStorage.getItem('mytoken')
  if(mytoken){
    //如果存在token值，证明用户已登录，使用next()方法允许用户跳转至相应的路由页面
    next()
  }else{
    //反之，处理用户未登录的情况
    //1、当用户去访问非login页面时，应让其跳转至login页面
    if(to.path!='/login'){
      console.log(111)
      //通过函数式编程实现跳转至登录页面
      next({path:'/login'})
    }else{
       //如果就是访问的login页面，则不干涉用户
       next()
    }
  }
})

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  components: { App },
  template: '<App/>',
})
